home *** CD-ROM | disk | FTP | other *** search
/ Light ROM 1 / LIGHT-ROM 1 (Amiga Library Services)(1994).iso / ffdisks / d998.lha / ScreenSelect / StickySelect / StickySelect.h < prev    next >
C/C++ Source or Header  |  1994-04-05  |  2KB  |  77 lines

  1. /** ** *** MakeRev Header *** **
  2. **
  3. **    ** StickySelect - Selector program for ScreenSelect. **
  4. **
  5. **    Copyright © 1993 Markus Aalto
  6. **
  7. **    Creation date: 27-Jul-93
  8. **
  9. **    ------------------------------------------------------------------
  10. **    $Filename: StickySelect.h $
  11. **    $Revision: 1.1 $
  12. **    $Date: 22-Jan-94 $
  13. **
  14. **    $Author: Markus_Aalto $
  15. **    $Comment: None. $
  16. **
  17. */
  18.  
  19. #ifndef    STICKYSELECT_H
  20. #define    STICKYSELECT_H    1
  21.  
  22. #define        INTUI_V36_NAMES_ONLY    1
  23. #define        __USE_SYSBASE            1
  24.  
  25. #include    "exec/types.h"
  26. #include    "exec/memory.h"
  27. #include    "exec/lists.h"
  28. #include    "exec/nodes.h"
  29. #include     "exec/semaphores.h"
  30. #include    "intuition/intuition.h"
  31. #include    "libraries/gadtools.h"
  32. #include    "workbench/startup.h"
  33. #include    "clib/macros.h"
  34.  
  35. #include    "proto/exec.h"
  36. #include    "proto/intuition.h"
  37. #include    "proto/dos.h"
  38. #include    "proto/utility.h"
  39. #include    "proto/icon.h"
  40. #include    "proto/gadtools.h"
  41. #include    "proto/graphics.h"
  42.  
  43. #include    "string.h"
  44. #include    "stdio.h"
  45.  
  46. #define    TEMPLATE        "PUBSCREEN/K,LEFT/N/K,TOP/N/K,WIDTH/N/K,HEIGHT/N/K"
  47. #define    ARG_PUBSCREEN    0
  48. #define    ARG_LEFT        1
  49. #define    ARG_TOP            2
  50. #define    ARG_WIDTH        3
  51. #define    ARG_HEIGHT        4
  52. #define    ARG_COUNT        5
  53.  
  54. #define    MY_IDCMP_FLAGS    (IDCMP_GADGETDOWN|IDCMP_GADGETUP|IDCMP_CLOSEWINDOW|\
  55.                         IDCMP_REFRESHWINDOW|LISTVIEWIDCMP)
  56. #define    SEMAPHORE_NAME    "ScreenSelect"
  57.  
  58. #define    CODE_NEWCLIENT    ((ULONG)~0)
  59.  
  60. typedef struct {
  61.     struct SignalSemaphore ud_semaphore;
  62.     struct List ud_TaskList;        /* List of tasks to notify. */
  63.     struct List ud_NameList;        /* Screen names. */
  64.     struct Task *ud_ScreenSelectTask;
  65.     ULONG ud_ScreenSelectSignal;    /* Signal to set when selection ready. */
  66.     ULONG ud_code;                    /* Selection/Newclient field. */
  67.     ULONG ud_extension;
  68. } UpdateDataSemaphore;
  69.  
  70. typedef struct {
  71.     struct Node su_Node;
  72.     struct Task *su_Task;
  73.     ULONG su_Signal;
  74. } SignalUpdateNode;
  75.  
  76. #endif
  77.